1. The Field of the Invention
The field of the invention is the automatic generation of network addresses by a host or node on the network so that explicit assignment is unnecessary. More particularly, the present invention relates to automatic address generation for networks according to the Internet Protocol or IP networks.
2. Present State of the Art
When networking a number of computing devices, such as conventional personal computers (PCs), mainframe and mini computers, or other computational devices, it is necessary for each node or host on the network to have a unique network protocol address as well as a physical link address to allow communication between the different nodes at the networking level of the ISO layered network model. A network protocol address is distinguishable and separate from the physical link address used at the physical link layer of the ISO model since a network protocol may operate over any physical link. For example, an Ethernet address corresponding to the IEEE 802 standard found in the network interface cards common to conventional PCs is a physical link address, not a network protocol address such as an IP address. In this manner, a network protocol is independent of the actual physical implementation used to transport data between the different nodes of the network.
A network protocol address may be obtained for each node of the network in one of several ways depending on the protocol capabilities and the desire for administrative interaction. A network protocol address may be manually assigned by a network administrator before bringing the node or host on-line. Another method allows a single node on the network to act as a network protocol address server whereby a newly attached node may request and receive a network protocol address according to a predefined convention. Finally, a node or host may automatically generate a network protocol address and begin communicating across the network.
Automatically generating a network protocol address has certain advantages over other methods of obtaining a network protocol address in certain situations, such as a small business environment or a corporate department having a Local Area Network (LAN) isolated from other corporate networks. For example, to manually assign the network protocol address requires some minimal amount of networking knowledge to track and assure that there are not conflicting network protocol addresses. Besides requiring a certain amount of networking expertise, this can sometimes be a tedious and imperfect task. Having a network protocol address server in many instances requires additional software to be installed and often a network administrator, again, something that is not desirable for reasonably small networks of two to ten nodes, such as those found in a small business environment.
Some network protocols facilitate automatic network protocol address generation by incorporating a unique identifier, such as the Institute of Electrical and Electronic Engineers (IEEE) 802 Ethernet address commonly found in network interface cards, into the network protocol address in order to reduce or eliminate the possibility of conflict with other automatically generated network protocol addresses. The IEEE 802 standard has a 48 bit (6 octet) address that is designed to be globally unique amongst every Ethernet compatible device manufactured. The administering organization assigns 24 bits (3 octets) to manufacturing organizations who in turn serialize the devices as they are produced.
If the network protocol is designed to run on top of physical layers besides Ethernet, such as Token Ring, etc., then some other way of automatically generating the network protocol address that does not resort to using the IEEE 802 Ethernet standard is used. In many practical instances, however, a homogenous Ethernet environment is used exclusively.
With respect to Internet Protocol or IP networks, the address base for an IP address is too small to simply include the uniquely available network interface card IEEE 802 Ethernet address as part of the IP address. In IP version 4, the predominant protocol for the Internet, an IP address will only contain 32 bits (4 octets) of information to identify the particular host. Structurally, the IP address is broken into a network identifying portion (also known as an IP network prefix), a host identifying portion, and some bits used to identify one of three different formats of the IP address. Effectively, there are only 8 to 24 bits available to identify the host on a particular network depending on which format is used. Using a part of the IEEE 802 Ethernet address as would not, therefore, guarantee a unique address for each host on the IP network.
Historically, IP addresses have been manually assigned or made available through an IP address server, while other forms of network protocols, such as Novell's IPX, predominately use automatic generation to determine the network protocol address. IP networks are increasingly important and make up the Internet that has become a standard for global network communications. One protocol that is used to assign addresses to IP hosts from an IP address server available on the network is the Dynamic Host Configuration Protocol (DHCP). DHCP is defined by RFC 1531 and is hereby incorporated by reference. While DHCP and other address assignment protocols eliminate the need for manual IP address configuration and management, they still do not provide the benefits of automatic network address generation.
What is needed is a reliable way to automatically generate an IP address so that an IP host may be easily connected into an IP network without requiring any networking expertise. Such automatic generation of an IP address will need to uniquely define the IP address so as to minimize conflicting usage with existing network addresses. Additionally, the method will need safeguards against creating the same IP address on different IP hosts that may also result conflicting usage. Finally, a robust implementation for automatically generating an IP address would easily integrate with IP networks where an address server exists or later becomes available so that the automatic generation only occurs when necessary and ceases when an IP address may be attained through more traditional channels. A way of generating an IP address that addresses the above-mentioned problems would allow a department of a corporation to easily set up a department IP network that can later be easily integrated into the existing corporate IP network scheme and also onto the Internet itself.